When an entity is considered to be complete, the rule engine assumes that it knows about the entire set of instances for that entity. An entity's completion status (whether or not it is considered to be complete) is of major importance when determining whether or not a relationship is partially known. See Understand partial knowledge of relationships.
The completion status of an entity is determined by the engine through the use of containment relationships. A containment relationship is a one-to-many relationship from a parent entity to a child entity, and is created automatically when an entity instance is added, based on the entity and containment definition defined in the properties file for the rulebase. An entity Y is considered to be complete if:
NOTE: The global entity is always automatically complete. It is not necessary (or possible) to create a containment relationship for the global entity.
Consider the example provided in the following diagram:
In this scenario:
Consider this second scenario:
In this scenario:
Consider this third scenario:
In this scenario: